/************************************************************************
 * @file GuiPlugin.cpp
 * @author Ian Chen
 * @version 1.0
 *
 * @section LICENSE
 * This program is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public License as
 * published by the Free Software Foundation; either version 3 of
 * the License, or (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful, but
 * WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
 * General Public License for more details at
 * http://www.gnu.org/licenses/lgpl.html
 *
 ************************************************************************/
#include <pluginui/plugin/GuiPlugin.h>
#include <pluginui/extension/AbstractExtension.h>
#include <pluginui/manager/ConfigPanelManager.h>

namespace antu
{
namespace plugin
{
namespace ui
{
GuiPlugin::GuiPlugin(PluginDescriptionSharedPtr pDescription, ServiceRegistry* pServiceRegistry)
    : AbstractPlugin(pDescription, pServiceRegistry),
      m_pExtension(nullptr)
{
}

GuiPlugin::~GuiPlugin()
{

}

void GuiPlugin::setExtension(AbstractExtension *pExtension)
{
    this->m_pExtension = pExtension;
}

void GuiPlugin::initMenu(AbstractMenuManager *pMenuManager)
{
    this->doInitMenu(pMenuManager);
}

void GuiPlugin::initToolBar(AbstractToolBarManager *pToolBarManager)
{
    this->doInitToolBar(pToolBarManager);
}

void GuiPlugin::initContentPanel(AbstractPanelManager *pContentPanelManager)
{
    this->doInitContentPanel(pContentPanelManager);
}

void GuiPlugin::initSidePanel(AbstractPanelManager *pSidePanelManager)
{
    this->doInitSidePanel(pSidePanelManager);
}

void GuiPlugin::initStatusBar(AbstractStatusBarManager *pStatusBarManager)
{
    this->doInitStatusBar(pStatusBarManager);
}

void GuiPlugin::initConfigPanels(ConfigPanelManager *pConfigPanelManager)
{
    this->doInitConfigPanels(pConfigPanelManager);
}

void GuiPlugin::startMenu(AbstractMenuManager *pMenuManager)
{
    this->doStartMenu(pMenuManager);
}

void GuiPlugin::startToolBar(AbstractToolBarManager *pToolBarManager)
{
    this->doStartToolBar(pToolBarManager);
}

void GuiPlugin::startContentPanel(AbstractPanelManager *pContentPanelManager)
{
    this->doStartContentPanel(pContentPanelManager);
}

void GuiPlugin::startStatusBar(AbstractStatusBarManager *pStatusBarManager)
{
    this->doStartStatusBar(pStatusBarManager);
}

void GuiPlugin::startSidePanel(AbstractPanelManager *pSidePanelManager)
{
    this->doStartSidePanel(pSidePanelManager);
}

void GuiPlugin::startConfigPanels(ConfigPanelManager *pConfigPanelManager)
{
    this->doStartConfigPanels(pConfigPanelManager);
}

void antu::plugin::ui::GuiPlugin::doInit(PluginContext* /*pContext*/)
{

}

void antu::plugin::ui::GuiPlugin::doStart()
{

}

void antu::plugin::ui::GuiPlugin::doStop()
{

}

void GuiPlugin::doFinishStartup()
{

}

void GuiPlugin::doInitMenu(AbstractMenuManager* /*pMenuManager*/)
{

}

void GuiPlugin::doInitToolBar(AbstractToolBarManager* /*pToolBarManager*/)
{

}

void GuiPlugin::doInitContentPanel(AbstractPanelManager* /*pContentPanelManager*/)
{

}

void GuiPlugin::doInitSidePanel(AbstractPanelManager* /*pSidePanelManager*/)
{

}

void GuiPlugin::doInitStatusBar(AbstractStatusBarManager* /*pStatusBarManager*/)
{

}

void GuiPlugin::doInitConfigPanels(ConfigPanelManager* /*pConfigPanelManager*/)
{

}

void GuiPlugin::doStartMenu(AbstractMenuManager* /*pMenuManager*/)
{

}

void GuiPlugin::doStartToolBar(AbstractToolBarManager* /*pToolBarManager*/)
{

}

void GuiPlugin::doStartContentPanel(AbstractPanelManager* /*pContentPanelManager*/)
{

}

void GuiPlugin::doStartSidePanel(AbstractPanelManager* /*pSidePanelManager*/)
{

}

void GuiPlugin::doStartStatusBar(AbstractStatusBarManager* /*pStatusBarManager*/)
{

}

void GuiPlugin::doStartConfigPanels(ConfigPanelManager* /*pConfigPanelManager*/)
{

}

}
}
}

